---
id: 6568991b4d4874a4d5271337
title: Step 12
challengeType: 20
dashedName: step-12
---

# --description--

Next, you are going to split each row in three segments, in order to represent the 3x3 squares properly.

Create a nested `for` loop to iterate over each segment of the row. Use `square_no` and `part` as the iterating variable and the `enumerate()` function. For now, leave the `enumerate()` call empty.

# --hints--

The inner loop should have `square_no` as the counter and `part` as the element from iterable.

```js
assert.match(code, /for\s+square_no\s*,\s*part/)
```

You should have `for square_no, part in enumerate()` within the existing `for` loop.

```js
assert.match(code, /for\s+square_no\s*,\s*part\s+in\s+enumerate\s*\(\s*\)\:/)
```

# --seed--

## --seed-contents--

```py
class Board:
    def __init__(self, board):
        self.board = board

    def __str__(self):
        upper_lines = f'\n╔═══{"╤═══"*2}{"╦═══"}{"╤═══"*2}{"╦═══"}{"╤═══"*2}╗\n'
        middle_lines = f'╟───{"┼───"*2}{"╫───"}{"┼───"*2}{"╫───"}{"┼───"*2}╢\n'
        lower_lines = f'╚═══{"╧═══"*2}{"╩═══"}{"╧═══"*2}{"╩═══"}{"╧═══"*2}╝\n'
        board_string = upper_lines

--fcc-editable-region--
        for index, line in enumerate(self.board):
          row_list = []

--fcc-editable-region--
```
